nethackfandomcom-20200214-history
Source:NetHack 3.1.0/monattk.h
Below is the full text to monattk.h from the source code of NetHack 3.1.0. To link to a particular line, write [[NetHack 3.1.0/monattk.h#line123]], for example. Warning! This is the source code from an old release. For the latest release, see Source code 1. /* SCCS Id: @(#)monattk.h 3.1 90/22/02 */ 2. /* NetHack may be freely redistributed. See license for details. */ 3. /* Copyright 1988, M. Stephenson */ 4. 5. #ifndef MONATTK_H 6. #define MONATTK_H 7. 8. /* Add new attack types below - ordering affects experience (exper.c). 9. * Attacks > AT_BUTT are worth extra experience. 10. */ 11. #define AT_NONE 0 /* passive monster (ex. acid blob) */ 12. #define AT_CLAW 1 /* claw (punch, hit, etc.) */ 13. #define AT_BITE 2 /* bite */ 14. #define AT_KICK 3 /* kick */ 15. #define AT_BUTT 4 /* head butt (ex. a unicorn) */ 16. #define AT_TUCH 5 /* touches */ 17. #define AT_STNG 6 /* sting */ 18. #define AT_HUGS 7 /* crushing bearhug */ 19. #define AT_SPIT 10 /* spits substance - ranged */ 20. #define AT_ENGL 11 /* engulf (swallow or by a cloud) */ 21. #define AT_BREA 12 /* breath - ranged */ 22. #define AT_EXPL 13 /* explodes - proximity */ 23. #define AT_GAZE 14 /* gaze - ranged */ 24. #define AT_TENT 15 /* tentacles */ 25. 26. #define AT_WEAP 254 /* uses weapon */ 27. #define AT_MAGC 255 /* uses magic spell(s) */ 28. 29. /* Add new damage types below. 30. * 31. * Note that 1-10 correspond to the types of attack used in buzz(). 32. * Please don't disturb the order unless you rewrite the buzz() code. 33. */ 34. #define AD_PHYS 0 /* ordinary physical */ 35. #define AD_MAGM 1 /* magic missiles */ 36. #define AD_FIRE 2 /* fire damage */ 37. #define AD_COLD 3 /* frost damage */ 38. #define AD_SLEE 4 /* sleep ray */ 39. #define AD_DISN 5 /* disintegration (death ray) */ 40. #define AD_ELEC 6 /* shock damage */ 41. #define AD_DRST 7 /* drains str (poison) */ 42. #define AD_ACID 8 /* acid damage */ 43. #define AD_SPC1 9 /* for extension of buzz() */ 44. #define AD_SPC2 10 /* for extension of buzz() */ 45. #define AD_BLND 11 /* blinds (glowing eye) */ 46. #define AD_STUN 12 /* stuns */ 47. #define AD_SLOW 13 /* slows */ 48. #define AD_PLYS 14 /* paralyses */ 49. #define AD_DRLI 15 /* drains life levels (Vampire) */ 50. #define AD_DREN 16 /* drains magic energy */ 51. #define AD_LEGS 17 /* damages legs (xan) */ 52. #define AD_STON 18 /* petrifies (Medusa, Cockatrice) */ 53. #define AD_STCK 19 /* sticks to you (Mimic) */ 54. #define AD_SGLD 20 /* steals gold (Leppie) */ 55. #define AD_SITM 21 /* steals item (Nymphs) */ 56. #define AD_SEDU 22 /* seduces & steals multiple items */ 57. #define AD_TLPT 23 /* teleports you (Quantum Mech.) */ 58. #define AD_RUST 24 /* rusts armour (Rust Monster)*/ 59. #define AD_CONF 25 /* confuses (Umber Hulk) */ 60. #define AD_DGST 26 /* digests opponent (trapper, etc.) */ 61. #define AD_HEAL 27 /* heals opponent's wounds (nurse) */ 62. #define AD_WRAP 28 /* special "stick" for eels */ 63. #define AD_WERE 29 /* confers lycanthropy */ 64. #define AD_DRDX 30 /* drains dexterity (Quasit) */ 65. #define AD_DRCO 31 /* drains constitution */ 66. #define AD_DRIN 32 /* drains intelligence (mind flayer) */ 67. #define AD_DISE 33 /* confers diseases */ 68. #define AD_DCAY 34 /* decays organics (Brown pudding) */ 69. #define AD_SSEX 35 /* Succubus seduction (extended) */ 70. /* If no SEDUCE then same as AD_SEDU */ 71. #define AD_DETH 36 /* for Death only */ 72. #define AD_PEST 37 /* for Pestilence only */ 73. #define AD_FAMN 38 /* for Famine only */ 74. 75. #define AD_CLRC 240 /* random clerical spell */ 76. #define AD_SPEL 241 /* random magic spell */ 77. #define AD_RBRE 242 /* random breath weapon */ 78. 79. #define AD_SAMU 252 /* hits, may steal Amulet (Wizard) */ 80. #define AD_CURS 253 /* random curse (ex. gremlin) */ 81. 82. 83. /* 84. * Monster to monster attacks. When a monster attacks another (mattackm), 85. * any or all of the following can be returned. See mattackm() for more 86. * details. 87. */ 88. #define MM_MISS 0x0 /* aggressor missed */ 89. #define MM_HIT 0x1 /* aggressor hit defender */ 90. #define MM_DEF_DIED 0x2 /* defender died */ 91. #define MM_AGR_DIED 0x4 /* aggressor died */ 92. 93. #endif /* MONATTK_H */ monattk.h